package com.example.ai.inventory.service;

import com.example.ai.inventory.entity.Product;
import java.util.List;

/**
 * 商品服务接口
 */
public interface ProductService {
    
    /**
     * 获取所有商品
     */
    List<Product> getAllProducts();
    
    /**
     * 根据ID获取商品
     */
    Product getProductById(Long id);
    
    /**
     * 根据编码获取商品
     */
    Product getProductByCode(String code);
    
    /**
     * 添加商品
     */
    Product addProduct(Product product);
    
    /**
     * 更新商品
     */
    Product updateProduct(Product product);
    
    /**
     * 删除商品
     */
    void deleteProduct(Long id);
    
    /**
     * 根据分类ID获取商品
     */
    List<Product> getProductsByCategoryId(Long categoryId);
    
    /**
     * 搜索商品
     */
    List<Product> searchProducts(String keyword);
    
    /**
     * 更新商品库存
     */
    void updateProductStock(Long productId, int quantity);
}